package com.peas.platform.module.icims.budget.ysy.adapter.repository.po;

import java.util.*;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.peas.platform.common.core.annotation.Comment;
import com.peas.platform.framework.mybatisplus.po.BasePo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.ibatis.type.JdbcType;
import javax.validation.constraints.*;

// 预算域二级项目同步记录
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "`tbl_budget_ysy_project_two_sync`")
public class BudgetYsyProjectTwoSyncPo extends BasePo {

    // 二级项目ID
    @Comment(value = "二级项目ID")
    @TableField(value = "`project_two_id`", jdbcType = JdbcType.BIGINT)
    private Long projectTwoId;

    // 同步时间
    @Comment(value = "同步时间")
    @TableField(value = "`sync_time`", jdbcType = JdbcType.TIMESTAMP)
    private Date syncTime;

    // 同步方式
    // 0自动、1手动
    @Comment(value = "同步方式")
    @Size(max = 20, message = "同步方式不能超过20个字符")
    @TableField(value = "`sync_type`", jdbcType = JdbcType.VARCHAR)
    private String syncType;

    // 同步结果
    @Comment(value = "同步结果")
    @Size(max = 100, message = "同步结果不能超过100个字符")
    @TableField(value = "`sync_result`", jdbcType = JdbcType.VARCHAR)
    private String syncResult;

    // 请求Header
    @Comment(value = "请求Header")
    @TableField(value = "`request_header`", jdbcType = JdbcType.CLOB)
    private String requestHeader;

    // 请求Body
    @Comment(value = "请求Body")
    @TableField(value = "`request_body`", jdbcType = JdbcType.CLOB)
    private String requestBody;

    // 响应Header
    @Comment(value = "响应Header")
    @TableField(value = "`response_header`", jdbcType = JdbcType.CLOB)
    private String responseHeader;

    // 响应Body
    @Comment(value = "响应Body")
    @TableField(value = "`response_body`", jdbcType = JdbcType.CLOB)
    private String responseBody;

}
